<script>
	import config from '@/app.config.js'
	// import sign from "common/lib/sign.js"
	import {
		version
	} from './package.json'
	import {
		login
	} from "@/mixin/login.js"
	import Vue from 'vue'
	// import checkUpdate from "@/uni_modules/uni-upgrade-center-app/utils/check-update"
	export default {
		mixins: [login],
		methods: {
			// 获取奖励中心
			async getAwardList() {
				let that = this;
				var data = await this.$api.getAwardList()
				uni.setStorageSync('awardList',data.rows)
				// this.awardList = data.rows
			},
			// 获取vip配置列表
			async getConfig() {
				var data = await this.$api.getConfig({
					pageIndex: 1,
					pageSize: 10,
				})
				uni.setStorageSync('vipConfig', data.rows[0] || '')
			},
			// 获取广告id
			async getAdvertisingIdList() {
				console.log('asdfasdfasd')
				var platformData = {
					'wx': "微信小程序",
					'toutiao': "抖音小程序",
				}
				var mptype
				// #ifdef MP-WEIXIN
				mptype = 'wx'
				// #endif
				// #ifdef MP-QQ
				mptype = 'qq'
				// #endif
				// #ifdef APP-PLUS
				mptype = 'app_wx'
				// #endif
				// #ifdef H5
				mptype = 'h5_wx'
				// #endif
				// #ifdef MP-TOUTIAO
				mptype = 'toutiao'
				// #endif
				var res = await this.$api.getAdvertisingIdList({
					pageIndex: 1,
					pageSize: 10,/*  */
					whereJson: {
						name: platformData[mptype],
						// appid:"wx79e951c7c63eb56b"
					}
				})
				let data = res.rows[0]
				console.log(data,'asdfaksdfklsd')
				uni.setStorageSync('advertising', data || '')

			},
			// 初始化微信
			initWx() {
				// uniCloud.callFunction({
					// name:"wx_init",
				// }).then(res=>{
					// let ticket = res.result.ticket
					// 初始化微信配置
					this.initWxConfig()
				// })
				
			},
			// 初始化微信配置
			initWxConfig(){
				setTimeout(async () => {
					let url = location.href.split('#')[0];
					var data = await this.$api.getWxConfig({
						pageIndex: 1,
						pageSize: 10,
						whereJson: {
							key:"wxIdH5"
						},
						sortRule: []
					})
					if(!data.rows[0]){
						uni.showToast({
							title:"请配置appid",
							icon:"none"
						})
						return
					}
					let appid = data.rows[0].val
					uni.setStorageSync('appid',appid)
					var _sign = sign(
						"",
						url);
					wx.config({
						debug: false, // 开启调试模式,调用的所有 api 的返回值会在客户端 alert 出来，若要查看传入的参数，可以在 pc 端打开，参数信息会通过 log 打出，仅在 pc 端时才会打印。
						appId: appid, // 必填，公众号的唯一标识
						timestamp: _sign.timestamp, // 必填，生成签名的时间戳
						nonceStr: _sign.nonceStr, // 必填，生成签名的随机串
						signature: _sign.signature, // 必填，签名
						jsApiList: ['chooseWXPay'] // 必填，需要使用的 JS 接口列表
					});
				
					wx.ready(function(res) {
				
				// 		wx.chooseWXPay({
				// 			timestamp: param.timeStamp, // 支付签名时间戳，注意微信jssdk中的所有使用timestamp字段均为小写。但最新版的支付后台生成签名使用的timeStamp字段名需大写其中的S字符
				// 			nonceStr: param.nonceStr, // 支付签名随机串，不长于 32 位
				// 			package: param
				// 			.packageValue, // 统一支付接口返回的prepay_id参数值，提交格式如：prepay_id=***）
				// 			signType: 'MD5', // 签名方式，默认为'SHA1'，使用新版支付需传入'MD5'
				// 			paySign: param.paySign, // 支付签名
				// 			success(res) {
				// 				console.log(res, '成功')
				// 				// 支付成功后的回调函数
				// 				callback(res);
				// 			},
				// 			fail(res) {
				// 				console.log(res, '错误')
				// 			},
				// 			cancel(res) {
				// 				// 取消支付后的回调函数
				// 			}
				
				// 		});
				
				
						console.log(res, '微信配置成功')
						// config信息验证后会执行 ready 方法，所有接口调用都必须在 config 接口获得结果之后，config是一个客户端的异步操作，所以如果需要在页面加载时就调用相关接口，则须把相关接口放在 ready 函数中调用来确保正确执行。对于用户触发时才调用的接口，则可以直接调用，不需要放在 ready 函数中。
					})
				
					wx.error(function(res) {
						console.log(res, 'error')
						// config信息验证失败会执行 error 函数，如签名过期导致验证失败，具体错误信息可以打开 config 的debug模式查看，也可以在返回的 res 参数中查看，对于 SPA 可以在这里更新签名。
					});
				
				
				}, 500)
			}
					

		},
		// 监听 - 页面404
		onPageNotFound: function(e) {
			uni.redirectTo({
				url: config.error.url
			})
		},
		onLaunch: function() {
			// var script = document.createElement('script')
			// script.src = 'https://res.wx.qq.com/open/js/jweixin-1.2.0.js'
			// document.body.appendChild(script)
			// this.initWx()
			console.log('aaaaaaaaaa')
			uni.getSystemInfo({
				success: function(e) {
					// #ifndef MP
					Vue.prototype.StatusBar = e.statusBarHeight;
					if (e.platform == 'android') {
						Vue.prototype.CustomBar = e.statusBarHeight + 50;
					} else {
						Vue.prototype.CustomBar = e.statusBarHeight + 45;
					};
					// #endif
			
					// #ifdef MP-WEIXIN
					Vue.prototype.StatusBar = e.statusBarHeight;
					let custom = wx.getMenuButtonBoundingClientRect();
					Vue.prototype.Custom = custom;
					Vue.prototype.CustomBar = custom.bottom + custom.top - e.statusBarHeight;
					// #endif		
			
					// #ifdef MP-ALIPAY
					Vue.prototype.StatusBar = e.statusBarHeight;
					Vue.prototype.CustomBar = e.statusBarHeight + e.titleBarHeight;
					// #endif
				}
			})
			console.log('bbbbbb')
			this.getAdvertisingIdList()
			this.getConfig()
			
			
			// #ifdef  MP-TOUTIAO
				this.wxlogin()
			// #endif
			// #ifdef  MP-WEIXIN 
				this.wxlogin1()
			// #endif
			// 注意：config.debug 在正式环境时，值为false，故此{}内的代码只有开发环境才会执行
			if (config.debug) {
				// #ifndef APP-PLUS
				console.log(
					`%c vk-client %c v${version} `,
					'background:#35495e ; padding: 1px; border-radius: 3px 0 0 3px;  color: #fff',
					'background:#007aff ;padding: 1px; border-radius: 0 3px 3px 0;  color: #fff; font-weight: bold;'
				);
				// #endif
				console.log('App Launch');
			}
			// 注意：以下代码正式和开发环境都会执行
			// #ifdef MP
			vk.updateManager.updateReady(); // 此代码可以让小程序自动检测最新版本
			// #endif
			Vue.prototype.$getUser = this.getUser
			
		},
		onShow: function() {
			// #ifdef APP-PLUS
			// checkUpdate()
			// #endif
			if (config.debug) console.log('App Show')
		
			var uni_id_token = uni.getStorageSync('uni_id_token')
			if (uni_id_token) {
				this.getUser()
				// this.getAwardList()
			}else{
				uni.removeStorageSync('user')
			}

		},
		onHide: function() {
			if (config.debug) console.log('App Hide')
		}
	}
</script>

<style lang="scss">
	/*每个页面公共css */
	@import "./common/css/app.scss";


	/*每个页面公共css */
	@import "/static/alfont/iconfont.css";


	@import "colorui/main.css";
	@import "colorui/icon.css";
	@import "common/css/main.css";
	@import "common/css/fast.css";
	
	
	

</style>


